home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 40
/
Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso
/
Aminet
/
misc
/
emu
/
ATUtilities.lha
/
ATUtilities
/
M2
/
GEM.DEF
< prev
next >
Wrap
Text File
|
2000-09-26
|
3KB
|
123 lines
(*$S- *)
DEFINITION MODULE GEM;
FROM SYSTEM IMPORT BYTE,WORD,ADDRESS;
FROM DOS IMPORT FileHandlePtr;
CONST
version = 0;
revision = 1;
TYPE
STRING = POINTER TO ARRAY [0..79] OF CHAR;
WindowFlags = (windowClose,windowDepth,borderless,memSwap);
WindowFlagSet = SET OF WindowFlags;
GadgetTypes = (boolean,string,integer,gadBorderless,systemClose,systemDepth);
GadgetTypeSet = SET OF GadgetTypes;
MessageClasses = (keyHit,gadgetUp,menuPick,closeWindow,activateWindow,noWindow);
MessageClassSet = SET OF MessageClasses;
MouseButtons = (left,right,middle,mb4,mb5,mb6,mb7,
mb8,mb9,mb10,mb11,mb12,mb13,mb14,mb15);
MouseButtonSet = SET OF MouseButtons;
WindowPtr = POINTER TO Window;
GadgetPtr = POINTER TO Gadget;
MenuPtr = POINTER TO Menu;
MenuItemPtr = POINTER TO MenuItem;
SystemMessagePtr = POINTER TO SystemMessage;
GDOSPtr = POINTER TO GDOS;
MenuItem = RECORD
text : STRING;
checkit : BOOLEAN;
checked : BOOLEAN;
enabled : BOOLEAN;
END (* RECORD *);
Menu = RECORD
nextMenu : MenuPtr;
leftEdge,width : CARDINAL;
mx1,mx2 : CARDINAL;
x1,x2 : CARDINAL;
text : ADDRESS;
enabled : BOOLEAN;
itemCount : CARDINAL;
items : ARRAY [0..24] OF MenuItem;
END (* RECORD *);
Gadget = RECORD
nextGadget : GadgetPtr;
leftEdge,topEdge,
width,height : CARDINAL;
x1,y1,
x2,y2,
w,h : CARDINAL;
type : GadgetTypeSet;
text : STRING;
id : CARDINAL;
undo : ADDRESS;
END (* RECORD *);
Window = RECORD
nextWindow : WindowPtr;
leftEdge,topEdge,
width,height : CARDINAL;
x1,y1,
x2,y2,
w,h : CARDINAL;
flags : WindowFlagSet;
title : STRING;
firstMenu : MenuPtr;
firstGadget : GadgetPtr;
lock : BOOLEAN;
swapFile : FileHandlePtr;
swapMem : ADDRESS;
swapSize : CARDINAL;
END (* RECORD *);
SystemMessage = RECORD
class : MessageClassSet;
mouseX : CARDINAL;
mouseY : CARDINAL;
mouseButtons : MouseButtonSet;
menuNum : CARDINAL;
itemNum : CARDINAL;
gadget : GadgetPtr;
window : WindowPtr;
END (* RECORD *);
GDOS = RECORD
(* ----- Nur fr internen Gebrauch --------- *)
gdosID : ARRAY [0..3] OF CHAR;
(* ----- ffentliche Variablen ------------- *)
gdosVersion : CARDINAL;
gdosRevision : CARDINAL;
graphics64 : ADDRESS;
firstWindow : WindowPtr;
(* ----- Nur fr internen Gebrauch --------- *)
mouseLock : CARDINAL;
message : SystemMessage;
systemMessage : SystemMessagePtr;
oldColors : ARRAY [0..(16*3)] OF BYTE;
tempFile : ARRAY [0..99] OF FileHandlePtr;
END (* RECORD *);
VAR gdos : GDOSPtr;
PROCEDURE InstallGDOSVector() : BOOLEAN;
PROCEDURE RemoveGDOSVector();
PROCEDURE GetGDOSVector() : GDOSPtr;
END GEM.